 /**
 * @file tal_gw_distinguish.h
 * @brief Common process - gate distinguish
 * @version 1.0.0   
 * @date 2021-09-18
 *
 * @copyright Copyright 2018-2021 Tuya Inc. All Rights Reserved.
 *
 */
#ifndef __TAL_GW_DISTINGUISH_H__
#define __TAL_GW_DISTINGUISH_H__


#ifdef __cplusplus
    extern "C" {
#endif

#include "tuya_cloud_types.h"


/**
 * @enum gateway types of gateway
 */
typedef enum {
    TAL_ZG_OTHERS_GW_TYPE = 0,  ///< others gateway type
    TAL_ZG_TUYA_GW_TYPE,        ///< tuya gateway type
} TAL_ZG_GW_TYPE_T;


/**
 * @brief distinguish between tuya gateway and others
 *
 * @param[in]   none
* @return TRUE: tuya gateway; FALSE: others
 */
TAL_ZG_GW_TYPE_T tal_zg_gateway_type_get(VOID_T);

/**
 * @brief get pan-id latest gateway
 *
 * @param[in]   none
* @return TRUE: tuya gateway; FALSE: others
 */
UINT16_T tal_zg_gateway_pan_id_get(VOID_T);

/**
 * @brief joined tuya gateway callback(app can rewrite this API)
 * @note < this is a weak function you can rewrite this API in app layer >
 *
 * @param[in]   none
 * @return TRUE: none
 */
VOID_T tal_zg_join_tuya_gateway_callback(VOID_T *argv);


#ifdef __cplusplus
}
#endif

#endif

